Repository navigation
fix(env,#17654): parcours d'installation Linux sur clone vierge — .NET, doc Lean, dépendances Sudoku/RL - #17691
Conversation
….04) Corrige trois defauts constates en rejouant l'installation documentee sur un clone vierge (See #10643, critere 1) : - setup/audit_environment et Probas/Infer/scripts/setup_environment (.sh et .ps1) installaient dotnet-interactive sans --version, donc le dernier build, alors que README et kernels-runtime.md imposent 1.0.617701. - setup-linux-macos.md prescrivait `apt install dotnet-sdk-9.0`, absent des depots Ubuntu 24.04 LTS (seul dotnet-sdk-8.0 y figure) ; remplace par le script officiel dotnet-install.sh, teste ici pour les canaux 9.0 et 10.0. - README et kernels-runtime.md donnaient .NET 10 pour optionnel, alors que `dotnet restore MyIA.CoursIA.sln` echoue sans lui (NETSDK1045 sur cinq projets net10.0) ; verifie : 0 erreur une fois le SDK 10 installe. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VuVMY5fhzd5cQhzHiyvjka
Sudoku-13-SymbolicAutomata-Python importe `regex` (recursion (?&rec)) et `dd.autoref` (BDD) sans garde, mais aucun des deux n'etait declare : sur un environnement neuf installe depuis requirements.txt, le notebook s'arrete en ModuleNotFoundError a la cellule 8cd6348c. Verifie : apres ajout, `notebook_tools.py execute` passe de bout en bout (rc 0). See #10643. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VuVMY5fhzd5cQhzHiyvjka
…/0f (RL) Les notebooks rlpt_0d_reward_trainer_sota, rlpt_0e_trl_DPO_SOTA et rlpt_0f_comparaison_GRPO_TRL_et_PPO_maison (kernel python3, CPU) importent sans garde trl, transformers, datasets et tokenizers, absents de RL/requirements.txt et sans cellule d'installation. Bornes basses prises sur les versions de leurs sorties committees (trl 1.10.0, transformers 5.12.1, datasets 5.0.0) ; trl >= 1.10 car rlpt_0f documente le retrait de PPOTrainer dans cette version. Validation a ce commit : pip install -r sur un venv neuf, imports resolus (trl 1.13.0, transformers 5.17.0, datasets 5.0.1, tokenizers 0.23.2), sans mise a jour de torch ni numpy. Execution complete de rlpt_0e en cours. See #10643. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VuVMY5fhzd5cQhzHiyvjka
- `source $HOME/.cargo/env` apres elan-init : elan s'installe dans ~/.elan ; sur une machine sans Rust le fichier n'existe pas, et avec Rust il ne met pas elan dans le PATH. Remplace par `source $HOME/.elan/env` (verifie : elan 4.2.4 resolu apres ce source). - `python -m lean4_jupyter.kernel install` ne fait rien (pas de __main__ dans kernel.py, rc 0, aucun kernel enregistre). Remplace par `python -m lean4_jupyter.install --user`, qui enregistre `lean4`, avec la limite connue : les notebooks declarent `lean4-wsl` (#17654, D1). - « 1.0.712001 casse #!import partout » : contredit par la mesure sous Linux (#!import execute sous 617701 et 712001) comme sur po-2024 ; nuance, le pin reste le standard. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VuVMY5fhzd5cQhzHiyvjka
|
Grain tag obligatoire (#10045, bloquant).
Pour passer ce gate, le body doit porter en tete une ligne de la forme : Le |
Bash Syntax Advisory — shebang / executable-bit warningsSee the |
Path-collision (organ #13359/#13615)Cette PR #17691 (
|
…Grain-tag (#17715) Le garde variation_tag_required bloquait #17691 (session cloud du mainteneur) alors que CLAUDE.md exempte explicitement ces PRs du protocole de variation. L'exemption tient par la conjonction des DEUX conditions (un renommage de branche seul ne suffit pas, et un marqueur body sans prefixe claude/* non plus -- une lane de la flotte ne peut pas usurper l'exemption). - scripts/ci/variation_tag_required.py : ajout --head-ref, exemption dans check() avant le parse du tag - scripts/tests/test_variation_tag_required.py : 5 tests (claude+Hors flotte / claude seul / flotte+Hors flotte / no head_ref / CLI end-to-end) - .github/workflows/always-on-guards.yml : export HEAD_REF du github.event.pull_request.head.ref, propagation via --head-ref Verif locale : 24/24 tests verts en 1.04s (19 anciens + 5 nouveaux). Aucun paths: filter ajoute (cf test_13232_metadata_dependent_guard). Grain: LIGHT/guard — lane myia-po-2026:CoursIA-2 — prev: MED/readme #17639 Co-authored-by: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
Bash Syntax Advisory — shebang / executable-bit warningsSee the |
|
Grain tag obligatoire (#10045, bloquant).
Pour passer ce gate, le body doit porter en tete une ligne de la forme : Le |
Bash Syntax Advisory — shebang / executable-bit warningsSee the |
Bash Syntax Advisory — shebang / executable-bit warningsSee the |
|
[ADJOINT PREFLIGHT] Verification tierce (lane myia-po-2023:CoursIA) :
|
…#17726) L'exemption hors flotte (tete claude/* + marqueur « Hors flotte ») livree par #17715 couvre le gate tag_required mais pas le routage d'orphelines : le sweep quotidien (#13086) proposait encore #17691 a une lane. Meme predicat applique a l'entree de `unattributed_blocked_prs`, donc partage avec `red_backlog`. Mesure A/B sur l'instance vivante : pre-fix 2 orphelines (dont #17691), post-fix 1. 4 tests ajoutes (unitaire + routage + 2 controles negatifs), 169/169 verts dans le fichier. Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
…al (#17798) A maintainer cloud session (claude/* branch + « Hors flotte » body marker) carries no fleet lane, so validate_dossier's third-party check had no carrier to compare against and refused every dossier by construction -- the impasse measured on #17691. Both conditions mirror the tag_required exemption (#17713/#17715, variation_tag_required.py); either alone changes nothing. The gate names the exemption in its output and json (out_of_fleet), merge_ready consumes rc+ready and needs no change (verified: 41 tests pass). Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Hors flotte : PR ouverte depuis une session Claude Code cloud du user, pas par une lane
po-*/ai-01. Pas de tagGrain:ni de lane à déclarer (CLAUDE.md, « À qui ce fichier s'adresse »).Summary
Changes
docs/reference/setup-linux-macos.md) :sudo apt install -y dotnet-sdk-9.0est absent des dépôts d'Ubuntu 24.04 LTS (E: Couldn't find any package by glob 'dotnet-sdk-9.0', seuldotnet-sdk-8.0y est) → script officieldotnet-install.sh --channel 9.0et--channel 10.0, plusDOTNET_ROOT/PATH.README.md,docs/reference/kernels-runtime.md) :dotnet restore MyIA.CoursIA.sln(étape 4 de l'installation rapide) échoue avec le seul SDK 9 —NETSDK1045sur cinq projetsnet10.0(quatre sousGenAI/Integrations-DotNet/Aspire/,GenAI/Vibe-Coding/docs/csharprepl-demo/LiveOrderApp.csproj). Le SDK 10 n'est plus présenté comme optionnel. La ligne WSL des prérequis précise « sous Windows uniquement » et renvoie vers la doc Linux/macOS.scripts/environment/{setup,audit}_environment.{sh,ps1},Probas/Infer/scripts/setup_environment.{sh,ps1}) :dotnet tool install -g Microsoft.dotnet-interactivesans--versioninstallait le dernier build, contre le pin1.0.617701du README et dekernels-runtime.md. Ajout de--version 1.0.617701(installation et chaîne de recommandation des scripts d'audit).setup-linux-macos.md) :source $HOME/.cargo/env→source $HOME/.elan/env(elan s'installe dans~/.elan) ;python -m lean4_jupyter.kernel install(ne fait rien, rc 0) →python -m lean4_jupyter.install --user; note de limite : les notebooks déclarentlean4-wsl, le kernel natif reste à porter (Parcours Linux sur clone vierge (Ubuntu 24.04) : le critère 1 de #10643 n'est pas tenu — mesure et 6 défauts #17654, D1).#!import(setup-linux-macos.md) : « 1.0.712001 casse#!importpartout » est contredit par la mesure sous Linux (comme sur po-2024) ; nuancé, le pin reste le standard.regex,dddansSudoku/requirements.txt(Sudoku-13) ;trl,transformers,datasets,tokenizersdansRL/requirements.txt(rlpt_0d, rlpt_0e, rlpt_0f), bornes basses prises sur les versions des sorties committées.Review Checklist
check_docs_links.py --check --base origin/main→ No new broken links ;scan_md_table_syntax.py→ 0 défaut ;check_prose_quantitative_claims.py --diff origin/main...HEAD→ OK ;bash -nsur les trois.shmodifiés.requirements.txtcorrigés (Test plan) ; aucune sortie committée.dotnet tool install;setup_environment.sh --auto-fixrelancé en entier (rc 0). Les.ps1n'ont pas pu être exécutés ici (pas de PowerShell dans le conteneur) : même changement d'argument que les.sh, à relire.Anti-regression
sorryintroduced — N/A, aucun.lean.@pytest.skip/assert Trueadded.Notebook-specific
N/A — aucun
.ipynbdans le diff.Test plan
Environnement : conteneur Ubuntu 24.04.4, Python 3.11 (venv), .NET SDK 9.0.318 + 10.0.401,
dotnet-interactive1.0.617701 ; exécution parpython scripts/notebook_tools/notebook_tools.py execute <nb> --json, dans un worktree jetable.setup_environment.shépinglédotnet-interactivedésinstallé, script relancé depuis un dossier vierge → 1.0.617701 installé, kernels.net-*enregistrésdotnet restore MyIA.CoursIA.sln: 5 ×NETSDK1045Sudoku/requirements.txtSudoku-13-SymbolicAutomata-Python:ModuleNotFoundError: No module named 'regex'RL/requirements.txttrl,transformers,datasets,tokenizersnon installés parpip install -rrlpt_0e_trl_DPO_SOTA: 19/19 cellules, 0 erreur, 564 s (trl 1.13.0, transformers 5.17.0 ; aucune mise à jour detorch/numpyau--dry-run)~/.elan/env~/.cargo/envn'ajoute pas elan au PATHsource ~/.elan/env:elan 4.2.4résolulean4_jupyter.installlean4_jupyter.kernel install: rc 0, aucun kernellean4enregistré (limitelean4-wsldocumentée)Hors périmètre, signalé pour traitement séparé :
check_docs_links.pyrelève 2 liens déjà cassés surmaindansdocs/grothendieckian-lens.md(l. 93 et 97) — la cibleProbas/DecisionTheory/Causal-Bridges/Do-Calculus-Bridge.ipynba été renomméeCausalBridges-01-Do-Calculus.ipynb. Non touché ici.See #17654, See #10643
🤖 Generated with Claude Code
https://claude.ai/code/session_01VuVMY5fhzd5cQhzHiyvjka
Generated by Claude Code